package com.qding.park.manager.mapper;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import com.qding.park.manager.pojo.TbCarlock;
import com.qding.park.manager.pojo.TbUserInfo;
import com.qding.park.manager.pojo.example.TbCarlockExample;

public interface TbCarlockMapper {
	
	
	/**
	  * lockTimeOut(锁车超时)
	  *
	  * @Title: lockTimeOut
	  * @Description: TODO
	  * @param @param carlock
	  * @param @return    设定文件
	  * @return int    返回类型
	  * @throws
	  */
	int lockTimeOut(TbCarlock carlock);
	
	int delete(@Param("orderId")String orderId);
	
	
	TbCarlock statisById(@Param("id") String orderId);
	
	/**
	 * @param example  统计条件
	 * @return  
	 * 根据统计条件查询
	 */
	List<TbCarlock> listByExample(TbCarlockExample example);
	
	/**
	  * getNextValue(得到下一个序列)
	  *
	  * @Title: getNextValue
	  * @Description: TODO
	  * @param @return    设定文件
	  * @return int    返回类型
	  * @throws
	  */
	int getNextSeq();
	
	
	/**
	 * @Description (保存)
	 * @param tbCarlock
	 * @return
	 */
	int save(TbCarlock tbCarlock);
	
	/**
	 * @Description (根车场id,车牌查询用户信息)
	 * @param parkId
	 * @param carNum
	 * @return
	 */
	TbUserInfo queryLockUser(@Param("parkId") int parkId,@Param("carNum")String carNum);
	
	TbCarlock queryById(@Param("id") String id);
	
	
	TbCarlock  queryByParkIdCarNum(@Param("parkId") int parkId,@Param("carNum")String carNum);
	
	/**
	 * @Description (根据条件查询)
	 * @param map
	 * @return
	 */
	List<TbCarlock> query(Map map);
	
	
	/**
	 * @param userId 用户id
	 * @return
	 */
	List<TbCarlock> listByUserid(@Param("userId")int userId);
	
	List<TbCarlock> queryByUserId(@Param("userId") int userid);
	
	    /**
	    * @Title: lockedByParkidCarnum
	    * @Description: TODO(根据parkid 与carnum查询已锁车列表)
	    * @param @param parkId
	    * @param @param carNum
	    * @param @return    参数
	    * @return List<TbCarlock>    返回类型
	    * @throws
	    */
	List<TbCarlock> lockedByParkidCarnum(@Param("parkId")int parkId,@Param("carNum")String carNum);
	/**
	 * @Description (根据订单id解锁)
	 * @param orderId
	 * @param status
	 * @return
	 */
	int unLockCar(@Param("id") String orderId,@Param("status")int status);
	
//	/**
//	 * @Description (根据id 更新锁车单的状态)
//	 * @param id
//	 * @param status
//	 * @return
//	 */
//	int updateStatusTimeOut(@Param("id")int id,@Param("status")int status);
}
